package com.sc.nft.feign;

import com.sc.nft.dto.BindPermissionsToTheProductMenuDTO;
import com.sc.nft.dto.IdRequest;
import com.sc.nft.sup.Result;
import com.sc.nft.vo.ProductMenuListVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

import java.util.List;

@FeignClient(name = "nft-commercial", path = "/commercial/merchantRoleMenu")
public interface MerchantRoleMenuClient {

    /**
     * 给产品绑定权限菜单
     *
     * @param bindPermissionsToTheProductMenuDTO
     * @return
     */
    @PostMapping(value = "bindPermissionsToTheProductMenu")
    Result bindPermissionsToTheProductMenu(@RequestBody BindPermissionsToTheProductMenuDTO bindPermissionsToTheProductMenuDTO);

    /**
     * 获取产品菜单列表
     *
     * @param idRequest
     * @return
     */
    @PostMapping(value = "productPermissionMenuList")
    Result<List<ProductMenuListVO>> productPermissionMenuList(@RequestBody IdRequest idRequest);

}
